<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>列表渲染-更新时的一个问题</title>
    <script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>
    <!-- 
        v-for指令
            1.用于展示列表数据
            2.语法：v-for="（item.index） in xxx" :key="index"
            3.可遍历：数组/对象/字符串（用的少）/指定次数（用的很少）
     -->

    <div id="root">
        <h2>更新时的一个问题</h2>
        <button @click="updateMei">更新马冬梅的信息</button>
        <ul>
            <li v-for="(person,index) in personList" :key="person.id">
                {{person.name}}-{{person.age}}-{{person.sex}}
            </li>
        </ul>
    </div>
</body>
<script type="text/javascript">

    new Vue({
        el: '#root',
        data: {
            personList: [
                { id: 1, name: '马冬梅', age: 18, sex: '女' },
                { id: 2, name: '周冬雨', age: 17, sex: '女' },
                { id: 3, name: '周杰伦', age: 21, sex: '男' },
                { id: 4, name: '温兆伦', age: 25, sex: '男' }
            ],
        },
        methods: {
            updateMei(){
                // this.personList[0].name = '马老师'
                // this.personList[0].age = 50
                // this.personList[0].sex = '男'
                // this.personList[0] = { id: 1, name: '马冬梅', age: 18, sex: '女' } 不生效
                this.personList.splice(0,1,{ id: 1, name: '马老师', age: 18, sex: '女' })
            }
        },
    })
</script>

</html>